package com.demo.controller.from;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.time.LocalDateTime;

@Data
@ApiModel("创建电影参数")
public class MovieProductAddFrom {

    /**
     * 电影名
     */
    @NotEmpty
    @ApiModelProperty("电影名")
    private String movieTitle;


    /**
     * 电影类型
     */
    @NotEmpty
    @ApiModelProperty("电影类型")
    private String movieType;


    /**
     * 电影区域
     */
    @NotEmpty
    @ApiModelProperty("电影区域")
    private String movieRegion;


    /**
     * 电影上映时间
     */
    @NotNull
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("电影上映时间 yyyy-MM-dd HH:mm:ss")
    private LocalDateTime movieReleaseTime;

    /**
     * 电影封面
     */
    @NotEmpty
    @ApiModelProperty("电影封面")
    private String movieImgurl;


    /**
     * 电影简介
     */
    @NotEmpty
    @ApiModelProperty("电影简介")
    private String moviePlotIntroduction;


    /**
     * 电影评分
     */
    @NotEmpty
    @ApiModelProperty("电影评分")
    private String movieScore;


    /**
     * 电影票房
     */
    @NotEmpty
    @ApiModelProperty("电影票房")
    private String movieBoxOffice;

    /**
     * 电影状态 0正在热映 1即将上映 2经典电影
     */
    @NotNull
    @Min(0)
    @Max(2)
    @ApiModelProperty("电影状态 0正在热映 1即将上映 2经典电影")
    private Integer movieState;


    /**
     * 电影导演主演
     */
    @ApiModelProperty("电影导演主演")
    private String moviePeople;


}
